#include "dail.h"

void dail_init()
{
    GPIO_InitTypeDef GPIO_InitStructure;
	RCC_AHB1PeriphClockCmd(	ID1_GPIO_CLK |
    ID2_GPIO_CLK |
	ID3_GPIO_CLK |
    ID4_GPIO_CLK, ENABLE);
 
	GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN;
	GPIO_InitStructure.GPIO_PuPd  = GPIO_PuPd_NOPULL;

    GPIO_InitStructure.GPIO_Pin = ID1_GPIO_PIN ;
    GPIO_Init(ID1_GPIO_PORT, &GPIO_InitStructure);

    GPIO_InitStructure.GPIO_Pin = ID2_GPIO_PIN ;
    GPIO_Init(ID2_GPIO_PORT, &GPIO_InitStructure);

    GPIO_InitStructure.GPIO_Pin = ID3_GPIO_PIN ;
    GPIO_Init(ID3_GPIO_PORT, &GPIO_InitStructure);

    GPIO_InitStructure.GPIO_Pin = ID4_GPIO_PIN ;
    GPIO_Init(ID4_GPIO_PORT, &GPIO_InitStructure);
}

int get_dail()
{
	int32_t device_id = -1;
	if(GPIO_ReadInputDataBit(ID1_GPIO_PORT, ID1_GPIO_PIN)==0)
	{
		device_id = 1;
		return device_id;
	}
	if(GPIO_ReadInputDataBit(ID2_GPIO_PORT, ID2_GPIO_PIN)==0)
	{
		device_id = 2;
		return device_id;
	}
	if(GPIO_ReadInputDataBit(ID3_GPIO_PORT, ID3_GPIO_PIN)==0)
	{
		device_id = 3;
		return device_id;
	}
	if(GPIO_ReadInputDataBit(ID4_GPIO_PORT, ID4_GPIO_PIN)==0)
	{
		device_id = 4;
		return device_id;
	}
	return -1;
}

void test_dail()
{
    int a = 0;
    dail_init();   
    a = get_dail();
    while(1)
    {}
}
